1. Field of the Invention
The present invention relates to a data routing apparatus, a server and data terminal equipment. More specifically, the invention relates to a data routing apparatus that routes data between a network server and data terminal equipment, to a server that serves diverse kinds of data, and to data terminal equipment requesting data from the server.
2. Description of the Related Art
The Internet, a huge network interconnecting computers throughout the world, is rapidly coming into general use today. Any host computer (called hosts hereafter) inside closed networks such as LANs (local area networks) may access the Internet, the network of interconnected networks, for transmitting electronic mail, making use of external databases, and other functions. Of a variety of services available on the Internet, the WWW (Word Wide Web) is particularly popular, in part because it allows users to receive multimedia content including dynamic images and voice data from around the world.
To browse data on the WWW, users utilize client software called a browser such as Netscape Navigator (registered trademark of Netscape Communications Inc.). Using a browser, a user may either specify a URL (uniform resource locator) to identify the desired entity on the WWW, or track links (highlighted characters or images selected typically by a pointing device) in HTML (Hyper Text Markup Language) documents to view other data related to the currently-displayed document.
Of the vast quantity of data located on the WWW, only a limited portion is typically needed by a given individual. Since the data retrieved by a user in the past is highly likely to be needed by the same user again in the future, client software is typically capable of storing a history of data viewed, in the form of links or "bookmarks" of preferred pages previously retrieved. By referring to the history or bookmarks, the user may readily recall necessary data.
It should be noted that such historical information is stored only in the environment in which the client software operates. The capability of acquiring historical information is built beforehand into the client software. Thus, if a user wants to utilize the historical information in a different environment or acquire a different kind of history, the client software must be modified.
A number of methods have been proposed to let easily users gain access to desired pages, without requiring modifications to their client software.
One such method involves the use of JavaScript (registered trademark of Sun Microsystems Inc.) that allows users to store information about desired pages into their client software. With this method, users select specific pages from the information they viewed previously, and JavaScript will then retrieve the requested pages.
Another method involves using JavaScript to passively build a history of pages browsed by the user. With this method, JavaScript operates in one window of the client software. User activity in other windows of the client software is then monitored by JavaScript. The link history is sent to a server for storage. In that case, the user's historical information is accumulated in a server and therefore may be accessed from different client software.
When the Internet is accessed from within a local area network (LAN) or similar setup, the host on which client software runs may be connected to a server having a data routing capability called a proxy server. The host in side the LAN is connected to the Internet not directly but only through the proxy server. This setup is primarily intended to prevent unauthorized entry into the LAN.
Illustratively, Japanese Published Unexamined Patent Application No. Hei 8-446432 discloses a gateway server that replaces hypertext links between client software and the server. The disclosed device is intended to forestall illegal access from the outside.
Some proxy servers are capable of retaining acquired data in a cache memory and of retrieving the data therefrom when the same data is accessed from within the LAN in question. Such a server obtains log information at the time of data routing. When a data request is received, the server may choose to search its cache memory for the requested data and responds with the matched data, reducing the load on the network.
FIG. 40 is a schematic view of the environment in which a conventional proxy server operates. In FIG. 40, a proxy server 610 routes data between a network 620 and a LAN 600. The network 620 is connected to servers 621 and 622 having data 621a and 622a to be served, respectively. The LAN 600 is connected to hosts 601 and 602 which run respectively client software programs 601a and 602a for viewing data supplied from the servers. The proxy server 610 has storage means 611 that accommodates log information and data acquired.
When the client software 601a requests the server 621 to serve the data 621a, the proxy server works in the manner described below.
FIG. 41 is a schematic view outlining how a conventional proxy server operates. In the description that follows, any components of the setup not relevant to the description of the proxy server workings are omitted.
Suppose that the client software 601a requests that data A be served from the server 621, having the data A stored in storage means 621a.
Given the data request from the client software 601a, the proxy server 610 stores log information about the request in the storage means 611. The proxy server 610 then accesses the server 621 and requests the data A which is part of the data stored in 621a. The data A thus obtained is placed in the storage means 611 before being forwarded to the client software 601a. If any other client software subsequently issues a request for the data A, the proxy server 610 does not send a data request to the server 621, but instead supplies the client software in question with the data A retrieved from the storage means 611.
In the manner described above, the proxy server acts as a cache memory that reduces traffic on the network and enhances access speed.
The method mentioned above for having information about desired pages stored in client software has one disadvantage: users must input all information about their preferred pages into their client software. To view the information stored by this method, users must invoke either a specific page or a particular function of their client software. It is impossible to display an invoked page while navigating through other pages simultaneously. Furthermore, because the information about desired pages is stored in a particular client software program, the same user cannot utilize this function if another client software program is activated.
Likewise, the method of having JavaScript monitor other windows has the disadvantage of having to open a dedicated page to view the historical information. Another disadvantage of this method is that a specific page from which to start acquiring the historical information must be viewed every time an access operation is made.
In addition, the preceding method is characterized by storing historical information to be held in a server. This makes it difficult for a particular user to view only his or her historical information. There exists a security risk of historical information of any user being accessed by other unscrupulous users.
The method involving the use of a proxy server as a cache memory poses two problems.
First, the retained log information is typically not offered to client software. Thus when a user requests data, the log information is not referenced. To acquire the log information requires that the storage means of the proxy server be accessed somehow independently of the client software.
The second problem with the proxy server method is that, because only the most recent data is retained in the cache memory, it is unpredictable whether any document in the cache is still the same as the latest document. The cache is accessed for previously acquired results on the assumption that any file once accessed remains unchanged. If the original file is found to have been updated, the contents of the cache are updated as well, i.e., the previously acquired results are discarded. If any old file happens to be in the cache, there is no way of designating and accessing that file.
The above second problem related to the proxy server may be circumvented by application of work space techniques. The work space is a system that preserves and manages a work environment in which a user works using a computer on plural tasks which may be switched to proceed in parallel. As such, the work space comprises techniques whereby the environment in which the user worked on tasks, the history of work by users, or both the environment and the work history, are preserved and managed so that a desired work state that existed in the past may be recalled. One such technique regarding the work space is disclosed illustratively in Japanese Published Unexamined Patent Application No. Hei 07-295930.
The system disclosed in Japanese Published Unexamined Patent Application No. Hei 07-295930 above has one disadvantage. That is, the backup of any old file before its update is stored with a difficult-to-understand file name such as "0331BK" that replaces the original file name of, for example, "SPECIFICATION." This can lead to a situation where the user is at a loss as to which file succeeds which before and after the update.
In addition, the conventional work space technique is incapable of dealing with documents or data acquired externally from Internet sources such as the WWW. That is, data in a server connected through the Internet may be updated over time but the client having accessed the data in question before has no way of knowing that the update took place. Since the WWW identifies any data through links based on URLs, any data with its URL replaced by some other name is no longer retrievable through linkage. Thus past status can be neither preserved nor reproduced.